perm filename STRC.INS[MUS,LCS] blob
sn#271077 filedate 1977-03-17 generic text, type C, neo UTF8
COMMENT ⊗ VALID 00002 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00002 00002 SRATE←25600MAG←512/SRATENCHNS←1
C00008 ENDMK
C⊗;
SRATE←25600;MAG←512/SRATE;NCHNS←1;
EXTERNAL FUNCTION
EXP(A),
ALOG(A);
FUNCTION POWER(X,N)=EXP(N*ALOG(X)); comment nth power of x;
VARIABLE /X,/Y,/Z,/XX,/YY,/ZZ,TMP1,TMP2,TMP3,TMP4,
TMP21,TMP22,TMP23,TMP24,
TMP31,TMP32,TMP33,TMP34,
TMP41,TMP42,TMP43,TMP44,
TMP51,TMP52,TMP53,TMP54,
/AA,/BB,/AA2,/BB2,/AA3,/BB3,/AA5,/BB5,/DELTA,
I,V4;
V4←1;
ARRAY FR(37),I1(37),I2(37);
FR(0)←FS/2; I1(0)←1.6;
FR(1)←G/2; I1(1)←1.5; I2(1)←1.2;
FR(2)←GS/2; I1(2)←1.2; I2(2)←1.1;
FR(3)←A/2; I1(3)←1.0; I2(3)←1.4;
FR(4)←AS/2; I1(4)←1.0; I2(4)←1.4;
FR(5)←B/2; I1(5)←1.2; I2(5)←1.3;
FR(6)←C; I1(6)←1.3; I2(6)←1.0;
FR(7)←CS; I1(7)←1.2; I2(7)←1.2;
FR(8)←D; I1(8)←1.5; I2(8)←1.4;
FR(9)←DS; I1(9)←1.5; I2(9)←1.0;
FR(10)←E; I1(10)←1.4; I2(10)←0.6;
FR(11)←F; I1(11)←1.3; I2(11)←1.2;
FR(12)←FS; I1(12)←1.25; I2(12)←1.0;
FR(13)←G; I1(13)←1.2; I2(13)←0.6;
FR(14)←GS; I1(13)←1.1; I2(14)←0.7;
FR(15)←A; I1(15)←1.2; I2(15)←1.0;
FR(16)←AS; I1(16)←1.7; I2(16)←1.0;
FR(17)←B; I1(17)←1.6; I2(17)←1.0;
FR(18)←C*2; I1(18)←1.5; I2(18)←1.0;
FR(19)←CS*2; I1(19)←1.6; I2(19)←1.0;
FR(20)←D*2; I1(20)←1.4; I2(20)←1.0;
FR(21)←DS*2; I1(21)←1.3; I2(21)←1.0;
FR(22)←E*2; I1(22)←1.1; I2(22)←1.0;
FR(23)←F*2; I1(23)←1.0; I2(23)←1.0;
FR(24)←FS*2; I1(24)←1.2; I2(24)←1.0;
FR(25)←G*2; I1(25)←0.7; I2(25)←1.0;
FR(26)←GS*2; I1(26)←1.0; I2(26)←1.0;
FR(27)←A*2; I1(27)←0.9; I2(27)←1.0;
FR(28)←AS*2; I1(28)←0.8; I2(28)←1.0;
FR(29)←B*2; I1(29)←0.7; I2(29)←1.0;
FR(30)←C*4; I1(30)←0.6; I2(30)←1.0;
FR(31)←CS*4; I1(31)←0.55; I2(31)←1.0;
FR(32)←D*4; I1(32)←0.5; I2(32)←1.0;
FR(33)←DS*4; I1(33)←0.45; I2(33)←1.0;
FR(34)←E*4; I1(34)←0.4; I2(34)←1.0;
FR(35)←F*4; I1(35)←0.35; I2(35)←1.0;
FR(36)←C/2; I1(36)←2.00;
INSTRUMENT STRCA;
VARIABLE V4,T1,T2,T3,T4,/AB4,/AA4,/BB4;
V4←1;
I_ONLY BEGIN
IF P25=0 THEN
BEGIN
P14←P24←0;
P18←F6;
P19←F6;
END
ELSE BEGIN
P14←POWER(2.5,(P3/2000))*.005;
P24←P14*20;
P18←F5;
P19←F5;
END;
FOR I←1 STEP 1 UNTIL 35 DO
BEGIN
IF P4=FR(I) THEN
BEGIN
P7←I1(I);
P10←1.0;
< P10←I2(I);
END;
END;
IF P21=0 THEN P22←.35 ELSE P22←.03;
IF V4>0.03 THEN P21←.35 ELSE P21←.03;
IF P21+P22≥P2 THEN
BEGIN
IF P21+P22≥.69 THEN
BEGIN
P21←(P2*.50)-.01;
P22←(P2*.50);
END;
IF P22≤.03 THEN P21←P2-P22-.01;
IF P21≤.03 THEN P22←P2-P21-.01;
END;
V4←P22;
P5←1;
P6←1.000;
P8←P7+1;
P9←4.000;
P11←P10+1.0;
P12←.007;
P13←20.0;
P16←.01;
P17←F4;
P20←F1;
P23←50*P12;
P3←P3/2;
T1←0.5;
T2←-1.2;
T3←-.75;
T4←1.5;
END;
LINEN(1,P21,P22,P2,P17,TMP44←0); < U1
RANDI(1,P13*MAG); < U2
OSCIL(U1,P15*MAG,F1); < U3
LINEN(P16,P21,P22,P2,F3,TMP41←0); < U4
AA4←(1+U2*P12)*(1+U3*P14)*(1+U4)*MAG;
AB4←(1+RANDI(.007,15*MAG))*(1-U3*P14)*(1-U4)*MAG;
BB4←(1+U2*P23)*(1+U3*P24)*MAG;
LINEN((P8-P7)*P6*P4*BB4,P21,P22,P2,P18,TMP42←0); < U5
OSCIL(((P7*P6*P4)*MAG)+U5,P6*(P4+T1)*AA4,P20); < U6
LINEN((P11-P10)*P9*P4*BB4,P21,P22,P2,P19,TMP43←0); < U7
OSCIL(((P10*P9*P4)*MAG)+U7,P9*(P4+T2)*AA4,P20); < U8
ZOSCIL(U1*P3,P5*P4*AA4+U6+U8,F1); < U9
OSCIL(((P7*P6*P4)*MAG)+U5,P6*(P4+T3)*AB4,P20); < U6
OSCIL(((P10*P9*P4)*MAG)+U7,P9*(P4+T4)*AB4,P20); < U8
ZOSCIL(U1*P3,P5*P4*AB4+U10+U11,F1); < U9
OUTA←OUTA+U9+U12;
END;